home *** CD-ROM | disk | FTP | other *** search
- unit PlotFormUnit;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
- StdCtrls, Parser10, TeEngine, Series, ExtCtrls, TeeProcs, Chart;
-
- type
- TPlotForm = class(TForm)
- MathExprParser: TParser;
- Chart: TChart;
- Panel1: TPanel;
- ExpressionEdit: TEdit;
- Label1: TLabel;
- XFromEdit: TEdit;
- XToEdit: TEdit;
- XStepEdit: TEdit;
- Label2: TLabel;
- Label3: TLabel;
- Label4: TLabel;
- GoBtn: TButton;
- LineSeries: TFastLineSeries;
- procedure GoBtnClick(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
- var
- PlotForm: TPlotForm;
-
- implementation
-
- {$R *.DFM}
-
- procedure TPlotForm.FormCreate(Sender: TObject);
- begin
- XStepEdit.Text := FloatToStr(0.1);
- end;
-
- procedure TPlotForm.GoBtnClick(Sender: TObject);
- var
- X: Double;
- XTo: Double;
- XStep: Double;
- Y: Double;
- begin
- MathExprParser.Expression := ExpressionEdit.Text;
- LineSeries.Clear;
- X := StrToFloat(XFromEdit.Text);
- XTo := StrToFloat(XToEdit.Text);
- XStep := StrToFloat(XStepEdit.Text);
- while X <= XTo do
- begin
- MathExprParser.X := X;
- Y := MathExprParser.Value;
- LineSeries.AddXY(X, Y, '');
- X := X + XStep;
- end;
- end;
-
- end.
-